package farmers.html;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import java.io.IOException;

/**
 * 教程网址
 * https://blog.csdn.net/weixin_29882269/article/details/112078260
 */
public class Jsoup51job {
    public static void main(String[] args) throws IOException {

        Document document = Jsoup.connect("https://search.51job.com/list/020000,000000,0000,00,2,99,java,2,1.html?lang=c&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare=").get();
        System.out.println(document);

        // 查找元素
        // getElementById(String id)
        // getElementsByTag(String tag)
        // getElementsByClass(String className)
        // getElementsByAttribute(String key)
//        Element activityName = document.getElementById("activity-name");
//        System.out.println(activityName);
        // <h1 class="rich_media_title " id="activity-name"> 上海昨日新增本土2494+16407！居住地详情公布 </h1>


//        可以用下列方法提取元素的数据：
//
//        attr(String key)获取元素key属性的值
//        attributes()获取元素所有属性
//        id()获取元素id属性的值 
//        className和classNames获取元素class属性的值
//        text()获取元素内容

//        System.out.println(activityName.text());
        // 上海昨日新增本土2494+16407！居住地详情公布

        Elements spans = document.getElementsByTag("span");

        StringBuffer sb = new StringBuffer();

//        0		上海本地宝 上海本地宝 微信号 shbendibao 功能介绍 为上海用户提供精准的便民生活资讯，让人性之光照亮生活！
//        1		shbendibao
//        2		为上海用户提供精准的便民生活资讯，让人性之光照亮生活！
//        3
//        4		上海市卫健委今早（20日）通报
//        5		2022年4月19日0—24时
//        6		新增本土确诊
//        7		2494例
//        8		新增本土无症状感染者
//        9		16407例
//        10		其中533例确诊病例为此前无症状感染者转归
//        11		1800例确诊病例和16178例无症状感染者
//        12		在隔离管控中发现
//        13		其余在相关风险人群排查中发现
//        14		一起来看详情
//        15		上海新增2494例本土确诊病例
//        16		2022年4月19日0—24时，新增本土新冠肺炎确诊病例
//        17		2494例
//        18		，含533例由无症状感染者转为确诊病例。新增治愈出院1682例。

        add(sb, spans.get(5).text());   // 时间
        add(sb, spans.get(7).text().replace("例", ""));   // 新增本土确诊
        add(sb, spans.get(9).text().replace("例", ""));   // 新增本土无症状感染者
//        add(sb, spans.get(10).text());
//        add(sb, spans.get(11).text());
//        add(sb, spans.get(12).text());
//        add(sb, spans.get(13).text());
//        add(sb, spans.get(14).text());

        String text18 = spans.get(18).text();
        String[] split18 = text18.split("。");
        String str18 = split18[1].replace("新增治愈出院", "").replace("例", "");
        add(sb, str18); // 新增治愈出院



        for (int i = 0; i < spans.size(); i++) {
            if(i > 20){
                break;
            }

            Element element = spans.get(i);
            System.out.println(i + "\t\t" + element.text());
        }


        System.out.println(sb.toString());

//        for (Element element : spans) {
//            System.out.println(element.text());
//            <span style="max-inline-size: 100%;cursor: text;font-size: 15px;letter-spacing: 1px;color: rgb(89, 89, 89);outline: none 0px !important;margin-bottom: 0em;">上海市卫健委今早（20日）通报</span>
//            <span style="max-inline-size: 100%;cursor: text;font-size: 15px;letter-spacing: 1px;color: rgb(89, 89, 89);outline: none 0px !important;margin-bottom: 0em;">2022年4月19日0—24时</span>
//            <span style="max-inline-size: 100%;cursor: text;font-size: 15px;letter-spacing: 1px;color: rgb(89, 89, 89);outline: none 0px !important;margin-bottom: 0em;">新增本土确诊</span>
//        }


    }


    public static void add(StringBuffer sb, String str){
        sb.append(str + "\t");
    }
}